1. Field of the Invention
This invention relates to telephone systems and methods of operation. More particularly, the invention relates to customer personalized and modifiable services in a telephone system.
2. Description of Prior Art
Today many calling services are available from Service Providers such as telephone companies, wireless carriers, cable companies and Internet telephony service providers which are provided using service logic implemented on Public-Switched Telephone Network (PSTN) switches, Service Nodes (SN), Intelligent Peripherals (IP), and Computer Telephony (CT) and CT integration platforms. These calling services have interfaces to the Service Providers"" customer service personnel and, in some cases, voice and web-based interfaces which allow the subscriber to modify service data. Service data can be characterized as personal information, such as name, address, telephone numbers, lists and personalized recording information such as greetings, messages, directions, etc. A subscriber, however, cannot personalized the service logic provided by the Service Provider in rendering calling services to the subscriber. Personalizing the service logic would be characterized as:
(a) Changing the Voice Menu
Example: xe2x80x9cPress 1 to leave a message for Dad; Press 2 to leave a message for Mom; Press 3 to leave a message for Tommy; etc.xe2x80x9d
(b) Checking the Calling Number to Play a Specific Message to the Caller
Example: Calling your parents, whose number is (777) 555-1234, call and the service logic has been modified to check the calling number and play the associated messagexe2x80x94xe2x80x9cMom and Dad, we are out of town for the weekend. We plan to return late Sunday evening and will check messages while we are way . . . xe2x80x9d.
(c) Add or Mix Logic from Two Services to Better Suit Your Needs
Example: You purchased two services from the Service Provider and you want them to work together vs. independently. The two services are a xe2x80x9cvoice mail boxxe2x80x9d and a xe2x80x9csingle number servicexe2x80x9d. You change the voice menu from being only voice mail to include xe2x80x9cPress 5 to try to contact Tom nowxe2x80x9d. Such a menu selection would cause a single number service to start.
Today, only the Service Provider can provide modifications to the subscriber service logic. Based on the large number of subscribers, personalization of services on an individual subscriber basis is expensive, time consuming, and impractical.
The following problems exist in this Service Provider environment:
1. The need for subscriber personalized mass market service.
2. The need for a universally defined service execution environment.
3. Subscriber access to service logic using a standard tool for customization.
The Service Provider is responsible for the service concept, marketing, development, test, trials, implementation (or roll out), support and assurance. Based on these many responsibilities it is extremely difficult to grasp how the control and modification of the service logic can be given to the subscriber.
Prior art falls mainly in the area of service control using Dual-Tone Multiple Frequency (DTMF) sequences. A customer subscribes to a calling service such as xe2x80x9cCall Waitingxe2x80x9d and can control usage of xe2x80x9cCall Waitingxe2x80x9d on a call-by-call basis. An example of disablement of xe2x80x9cCall Waitingxe2x80x9d could be done by first dialing xe2x80x9c*70,xe2x80x9d before the telephone number. The result would be a single call with no xe2x80x9cCall Waitingxe2x80x9d modification. Other areas of prior art include allowing the subscriber to update subscriber data (Speed Dial lists, etc.) using Interactive Voice Response (IVR)/DTMF interface. Work over the past years has led to the enablement of web-based interfaces to manipulate subscriber data using the Internet and the subscriber""s PC.
Other areas of prior art include:
U.S. Pat. No. 4,611,094 issued Sep. 9, 1986, discloses a method allowing a customer to find telephone service within flexible boundaries for calls directed to the customer. Within constraints imposed by the selected embodiment, the method reduces software development traditionally associated with the provision of new services. A plurality of independent call processing capabilites, such as announcement, designated collection and billing, are provided at a switching office. A program defined by a customer is executed in response to each call to the customer. The program makes decisions based on the parameters of the calls such as time, Automatic Number Identification (ANI), information digits requested and received from a caller, etc., and links together the appropriate ones and capabilities in the proper order to dispose of the call based on the call parameters specified in the program. A customer service may be modified by changing the customer program.
U.S. Pat. No. 5,544,229 issued Aug. 6, 1996, discloses a common adjunct switch in association with a communication network provides a number of functionalities, one of which allows associated subscribers to customize the way in which they receive telephone calls and access enhanced services, such as facsimile services. In particular, each subscriber may dynamically specify a number of calling identifiers and a different call treatment for each such identifier as well as a particular billing mode. A call treatment may include, for example, a specification to forward an associated call to (a) a particular telephone number; (b) a default telephone number, or (c) a messaging service.
None of the prior art discloses implementing a Service Provider""s call processing logic and data in a platform specific run-time system to allow the Service Provider to provide calling services which are customizable by subscribers for unique calling services, not otherwise available from the Service Provider.
An object of the invention is a calling service development process for a Service Provider in implementing subscriber personalized and modifiable calling services in a Service Provider platform-specific run-time system.
Another object is a Service Provider""s call processing system embedded in a JAVA virtual machine enabling subscribers to modify Service Provider service logic for customizable calling services.
Another object is a Service Provider call processing system embedded in a JAVA virtual machine which allows subscribers to modify service logic paths and test the modification prior to provisioning the customized service in the Service Provider""s call processing system.
Another object is a support server in a call processing system embedded in a JAVA virtual machine in which the server supports service logic uploaded from a subscriber""s terminal; telephony/voice interfaces from a Public-Switch Telephone Network (PSTN) and Intelligent Peripheral (IP)/Data Interface (DI) from any Intelligent Peripheral network.
Another object is a Service Management System which supports a call processing system embedded in a JAVA virtual machine to support service logic downloaded from a subscriber to a Service Provider""s platform and Service Provider logic downloaded to the subscriber via the JAVA virtual machine.
Another object is a Service Provider""s call processing system embedded in the JAVA virtual machine which provides service assurance support for subscriber personalized service logic.
Another object is a Service Provider""s call processing system embedded in a JAVA virtual machine enabling service logic modification by a subscriber to service logic transfers from the Service Provider to the subscriber; service data provisioning using a variety of methods, and service logic modification using a service tool kit provided by the Service Provider.
Another object is a Service Provider""s calling system embedded in a JAVA virtual machine to generate billing records which support both flat rate and usage-based billings.
Another object is a Service Provider""s calling system embedded in a JAVA virtual machine which supports local and remote testing of modified service logic in the virtual machine.
Another object is a Service Provider calling system having functions which support function sharing between the Service Provider""s calling system and the subscriber appliance.
These and other objects, features and advantages are achieved in a Service Provider""s calling system embedded in a platform specific runtime system or environment. In one embodiment, the service logic is embodied in a JAVA virtual machine as JAVA applets and JAVA beans. A minimization level of subscriber service is developed and set by the Service Provider. Any required minimization/customization is performed and automated through the provider""s Customer Service agent and the provider""s Service Management System. Higher levels of customization available to subscribers are developed by the Provider using JAVA bean configuration options in the JAVA virtual machine. After platform installation and testing of the JAVA bean options developed by the Provider, the service logic or JAVA beans are made available to the subscriber from a web site download or CD-ROM/diskette or the subscriber working with a server-based service modification kit. Using a terminal, e.g., PC, and the Provider""s service kit, the subscriber may proceed to alter the Provider""s service logic for personalizing subscriber service configurations. The subscriber locally tests the personalized service using the Provider""s service kit. After local testing, the personalized service is uploaded to the Provider""s network for remote testing. The remote testing is done by the subscriber using information provided by the Provider from a service web site. After subscriber remote testing of all modified service logic paths, the service web site performs the service logic update to the Provider Service Management System (SMS) which downloads the subscriber personalized service logic to the Service Provider""s platform and applicable only to the subscriber""s device. The Provider assumes responsibility for the service assurance of the subscriber""s personalized service whether installed on the subscriber""s platform or on the subscriber""s device.